package com.niiwoo.activity.stage.service.cashactivity;

import java.util.List;

import com.niiwoo.activity.stage.dto.request.cashactivity.ActivityGreenConfigDetailReqDTO;
import com.niiwoo.activity.stage.dto.request.cashactivity.ActivityPageConfigReqDTO;
import com.niiwoo.activity.stage.dto.request.cashactivity.ReturnCashActivityAddReqDTO;
import com.niiwoo.activity.stage.dto.request.cashactivity.ReturnCashActivityReqDTO;
import com.niiwoo.activity.stage.dto.response.cashactivity.ActivityAddRespDTO;
import com.niiwoo.activity.stage.dto.response.cashactivity.ActivityDetailRespDTO;
import com.niiwoo.activity.stage.dto.response.cashactivity.ActivityGreenConfigDetailRespDTO;
import com.niiwoo.activity.stage.dto.response.cashactivity.ReturnCashActivityRespDTO;
import com.niiwoo.tripod.provider.dto.response.PageResponseDTO;

public interface CashRedbagActivityDubboService {

	/**
	 * 查询活动列表
	 * @param reqDTO
	 * @return
	 */
	PageResponseDTO<ReturnCashActivityRespDTO> list(ReturnCashActivityReqDTO reqDTO);

	/**
	 * 添加新的活动
	 * @param reqDTO
	 * @param managerId
	 * @param managerName
	 * @return
	 */
	ActivityAddRespDTO add(ReturnCashActivityAddReqDTO reqDTO, Long managerId,String managerName);

	/**
	 * 活动详情
	 * @param activityId
	 * @return
	 */
	ActivityDetailRespDTO detail(Long activityId);

	/**
	 * 活动删除
	 * @param activityId
	 */
	void del(Long activityId);

	/**
	 * 活动页面配置新增
	 * @param reqDTO
	 */
	void updateConfig(ActivityPageConfigReqDTO reqDTO);

	/**
	 * 绿色通道详情
	 * @param activityId
	 * @return
	 */
	List<ActivityGreenConfigDetailRespDTO> getGreenConfigDetail(Long activityId);

	/**
	 * 绿色通道配置
	 * @param reqDto
	 * @param managerId
	 * @param managerName
	 */
	void updateGreenConfig(List<ActivityGreenConfigDetailReqDTO> reqDto,Long managerId, String managerName);

	/**
	 * 编辑活动
	 * @param reqDto
	 * @param managerId
	 * @param managerName
	 */
	void update(ReturnCashActivityAddReqDTO reqDto, Long managerId,String managerName);

}
